perm filename TEST.PAS[AL,HE] blob
sn#736544 filedate 1983-12-31 generic text, type C, neo UTF8
COMMENT ⊗ VALID 00002 PAGES
C REC PAGE DESCRIPTION
C00001 00001
C00002 00002 program al
C00006 ENDMK
C⊗;
program al;
type
msgtypes = (initarmscmd,calibcmd,killarmscmd,wherecmd,
abortcmd,stopcmd,movehdrcmd,movesegcmd,
centercmd,operatecmd,movedonecmd,signalcmd,
setccmd,forcesigcmd,forceoffcmd,biasoncmd,biasoffcmd,setstiffcmd,
zerowristcmd,wristcmd,gathercmd,getgathercmd,readadccmd,writedaccmd,
errorcmd,floatcmd,setloadcmd,
armmagiccmd,realcmd,vectorcmd,transcmd);
errortypes = (noerror,noarmsol,timerr,durerr,toolong,featna,
unkmess,srvdead,adcdead,nozind,exjtfc,paslim,nopower,badpot,devbusy,
baddev,timout,panicb,nocart,cbound,badparm);
event = record i,j,k: integer end;
eventp = ↑event;
message = record
ok: boolean;
cmd: msgtypes;
dev: integer;
bits: integer;
n: integer;
(* dev, bits, n, evt: integer; (* for arm code version *)
evt: eventp;
dur: real;
case integer of
1: (v1: real;
v2: real;
v3: real;
t: array [1..12] of real);
2: (sfac: real;
wobble: real;
pos: real);
3: (val: real;
angle: real;
mag: real);
4: (error: errortypes);
end;
var escflg, timflg: boolean;
curtime,i: integer;
msg: message;
msgp: ↑message;
c: msgtypes; e: errortypes; r: real; ev: eventp; b: boolean;
procedure foo;
begin
i := 123;
b := msg.ok;
c := msg.cmd;
i := msg.dev;
i := msg.bits;
i := msg.n;
ev := msg.evt;
r := msg.dur;
e := msg.error;
r := msg.v1;
r := msg.sfac;
r := msg.val;
r := msg.v2;
r := msg.wobble;
r := msg.angle;
r := msg.v3;
r := msg.pos;
r := msg.mag;
r := msg.t[1];
r := msg.t[2];
r := msg.t[11];
r := msg.t[12];
r := msg.t[i];
new(msgp);
with msgp↑ do
begin
dev := 1;
dur := 3.14;
t[2] := 10.0;
b := ok;
c := cmd;
i := dev;
i := bits;
i := n;
ev := evt;
r := dur;
e := error;
r := v1;
r := sfac;
r := val;
r := v2;
r := wobble;
r := angle;
r := v3;
r := pos;
r := mag;
r := t[1];
r := t[2];
r := t[11];
r := t[12];
r := t[i];
end;
end;
begin
i:=123;
foo;
end.